#ifndef SALESMANMAINWINDOW_H
#define SALESMANMAINWINDOW_H

#include <QMainWindow>

#include "SalesmanEnvironment.h"

namespace Ui {
    class SalesmanMainWindow;
}

class SalesmanMainWindow : public QMainWindow {
    Q_OBJECT
public:
    SalesmanMainWindow(QWidget *parent = 0);
    ~SalesmanMainWindow();

signals:

public slots:
    void startSimulation();
    void updateSimulationInfo(int popSize = 0, int age = 0, double bestFit = 0,
                            double worstFit = 0, double sumFit = 0, double workTime = 0);

    void loadFromFile();
    void saveToFile();

    void onSimulationFinished();
    void stopSimulation();

protected:
    void changeEvent(QEvent *e);

private:
    Ui::SalesmanMainWindow *ui;
    SalesmanEnvironment* salEnv;
};

#endif // SALESMANMAINWINDOW_H
